In game development for casino-type gaming devices, new features (such as video features) are often being added. However, since a video engine is typically an operating system feature, there is usually a waiting period until an operating system is approved. In this regard, it has traditionally been the operating system that contains a video engine.
Currently, the operating system for gaming machines supports the SAVAGE onboard video chipset and an NVIDIA card attached to the available PCI slot. For hardware acceleration, X-Windows and NVIDIA drivers on the target are employed. The current gaming platform provides graphics services to applications only through the OS video library. The video library clients talk to a separate video server application that renders graphics content to the display. Traditionally, graphics processing is done on the server side through the same graphics context and is driven by client messages delivered via IPC (Interprocess communication). The services that are supported include some basic 2D image formats, 2D movie formats, and transparency. Further, these services take advantage of OpenGL hardware acceleration.
Within the operating system is a video engine, with a game application making calls to the video engine. If upgrades and enhancements are made into the video engine, for example to add 3D technology, multiple windows support, and the like, the operating system needs to be modified before the game application can benefit from any of the new enhancements. Without the support of the operating system, the game application has no access to the enhancements.
Accordingly, it would be desirable to use more advanced video technologies with video support that extends the video server functionality.